<script setup lang="ts">
const props = defineProps({
  value: String
})
</script>

<template>
  <button>
        <span>
          {{ props.value }}
        </span>
  </button>
</template>

<style scoped>
/* From uiverse.io by @Ali-Tahmazi99 */
button {
  display: inline-block;
  height: 50px;
  border-radius: 10px;
  //border: 1px solid #03045e;
  background-color: #eee;
  position: relative;
  overflow: hidden;
  transition: all 0.5s ease-in;
  z-index: 1;
}

button::before,
button::after {
  content: '';
  position: absolute;
  top: 0;
  width: 0;
  height: 100%;
  transform: skew(15deg);
  transition: all 0.5s;
  overflow: hidden;
  z-index: -1;
}

button::before {
  left: -10px;
  background: #240046;
}

button::after {
  right: -10px;
  background: #5a189a;
}

button:hover::before,
button:hover::after {
  width: 58%;
}

button:hover span {
  color: #e0aaff;
  transition: 0.3s;
}

button span {
  color: #03045e;
  font-size: 18px;
  transition: all 0.3s ease-in;
}
</style>